local db = TUNING.MOD_MOD_PONO.badge.mod_pono_energy

-- 快速模式检测函数
local function IsInSpeedMode(doer)
    return doer and doer:HasTag("pono_speed_mode")
end

local function IsInSpeedMode_Client(doer)
    return doer and doer:HasTag("pono_speed_mode")
end

---@type data_changeactionsg[]
local data = {
    -- 【快速模式限制】攻击动作 -> 无效果（使用不存在的StateGraph状态）
    {
        action = 'ATTACK',
        sg = 'pono_speed_mode_blocked',  -- 不存在的状态，会导致动作无法执行
        testfn = IsInSpeedMode,
        testfn_client = IsInSpeedMode_Client
    },
    
    -- 【快速模式限制】砍伐动作 -> 无效果
    {
        action = 'CHOP',
        sg = 'pono_speed_mode_blocked',
        testfn = IsInSpeedMode,
        testfn_client = IsInSpeedMode_Client
    },
    
    -- 【快速模式限制】开采动作 -> 无效果
    {
        action = 'MINE',
        sg = 'pono_speed_mode_blocked',
        testfn = IsInSpeedMode,
        testfn_client = IsInSpeedMode_Client
    },
    
    -- 【快速模式限制】挖掘动作 -> 无效果
    {
        action = 'DIG',
        sg = 'pono_speed_mode_blocked',
        testfn = IsInSpeedMode,
        testfn_client = IsInSpeedMode_Client
    },
    
    -- 【快速模式限制】采集动作 -> 无效果
    {
        action = 'PICK',
        sg = 'pono_speed_mode_blocked',
        testfn = IsInSpeedMode,
        testfn_client = IsInSpeedMode_Client
    },
    
    -- 【快速模式限制】建造动作 -> 无效果
    {
        action = 'BUILD',
        sg = 'pono_speed_mode_blocked',
        testfn = IsInSpeedMode,
        testfn_client = IsInSpeedMode_Client
    },
    
    -- 【快速模式限制】拾取动作 -> 无效果
    {
        action = 'PICKUP',
        sg = 'pono_speed_mode_blocked',
        testfn = IsInSpeedMode,
        testfn_client = IsInSpeedMode_Client
    },
    
    -- 【快速模式限制】使用物品动作 -> 无效果
    {
        action = 'USEITEM',
        sg = 'pono_speed_mode_blocked',
        testfn = IsInSpeedMode,
        testfn_client = IsInSpeedMode_Client
    },
    
    -- 【快速模式限制】给予动作 -> 无效果
    {
        action = 'GIVE',
        sg = 'pono_speed_mode_blocked',
        testfn = IsInSpeedMode,
        testfn_client = IsInSpeedMode_Client
    },
    
    -- 【快速模式限制】修理动作 -> 无效果
    {
        action = 'REPAIR',
        sg = 'pono_speed_mode_blocked',
        testfn = IsInSpeedMode,
        testfn_client = IsInSpeedMode_Client
    },
    
    -- 【快速模式限制】收获动作 -> 无效果
    {
        action = 'HARVEST',
        sg = 'pono_speed_mode_blocked',
        testfn = IsInSpeedMode,
        testfn_client = IsInSpeedMode_Client
    },
    
    -- 【快速模式限制】点燃动作 -> 无效果
    {
        action = 'LIGHT',
        sg = 'pono_speed_mode_blocked',
        testfn = IsInSpeedMode,
        testfn_client = IsInSpeedMode_Client
    },
    
    -- 【快速模式限制】灭火动作 -> 无效果
    {
        action = 'EXTINGUISH',
        sg = 'pono_speed_mode_blocked',
        testfn = IsInSpeedMode,
        testfn_client = IsInSpeedMode_Client
    },
    
    -- 【快速模式限制】睡眠动作 -> 无效果
    {
        action = 'SLEEPIN',
        sg = 'pono_speed_mode_blocked',
        testfn = IsInSpeedMode,
        testfn_client = IsInSpeedMode_Client
    },
    
    -- 【快速模式限制】坐下动作 -> 无效果
    {
        action = 'SITON',
        sg = 'pono_speed_mode_blocked',
        testfn = IsInSpeedMode,
        testfn_client = IsInSpeedMode_Client
    },
    
    -- 【快速模式限制】激活/交互动作 -> 无效果
    {
        action = 'ACTIVATE',
        sg = 'pono_speed_mode_blocked',
        testfn = IsInSpeedMode,
        testfn_client = IsInSpeedMode_Client
    }
}

return data